package py.com.erpone.session.dm;

import java.util.List;

import javax.ejb.LocalBean;
import javax.ejb.Stateful;
import javax.enterprise.context.Conversation;
import javax.enterprise.context.ConversationScoped;
import javax.faces.event.ValueChangeEvent;
import javax.inject.Inject;
import javax.inject.Named;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import javax.persistence.PersistenceContextType;

import py.com.erpone.entity.dm.Ciudad;
import py.com.erpone.entity.dm.Marca;
import py.com.erpone.entity.dm.Pais;
import py.com.erpone.session.dm.list.CiudadList;
import py.com.erpone.session.dm.list.PaisList;


@Stateful
@Named
@LocalBean
@ConversationScoped
public class CiudadBean {

	@PersistenceContext(type=PersistenceContextType.EXTENDED)
	private EntityManager em;
	
	@Inject
	private Conversation conversation;
	
	private Ciudad ciudad;	
	
	@Inject
	private PaisList paisList;
	
	private List<Pais> paisCombo;
	
	public Ciudad getCiudad() {
		return ciudad;
	}

	public List<Pais> getPaisCombo() {
		return paisCombo;
	}

	public void setPaisCombo(List<Pais> paisCombo) {
		this.paisCombo = paisCombo;
	}

	public void setCiudad(Ciudad ciudad) {
		this.ciudad = ciudad;
	}

	public void iniciar(){
		if(conversation.isTransient())
			conversation.begin();
		ciudad=new Ciudad();
		paisCombo = paisList.findAll();
		
	
	}
	
	public void selectOneMenuListener(){
		setPaisCombo(paisCombo);
		 //setClCombo(ciudadList.findAllCityByCountry((Pais) v.getNewValue()));
	}
	
	public void iniciar2(Ciudad ciudad){
		if(conversation.isTransient())
			conversation.begin();
		this.ciudad=em.find(Ciudad.class, ciudad.getId());
		this.paisCombo = paisList.findAll();		
	}
	
	
	public void guardar(){
		if(ciudad.getId()==null)
		em.persist(ciudad);
		else
		em.merge(ciudad);
		if(!conversation.isTransient())
		conversation.end();
		
	}
	

	
	public void eliminar(Ciudad ciudad){
		em.remove(em.merge(ciudad));
		if(!conversation.isTransient())
			conversation.end();
	
	}
	
	public String cancelar(){
		if(!conversation.isTransient())
			conversation.end();
		return "/dm/ciudades.xhtml";
	}
	
}
